package cn.sheep.dolphin.common

import cn.sheep.dolphin.config.DolphinConfig
import redis.clients.jedis.{JedisPool, JedisPoolConfig}

/**
  * author: old sheep
  * QQ: 64341393 
  * Created 2018/12/1
  */
object Jedispools {


	private val jedisPoolConfig = new JedisPoolConfig()
	jedisPoolConfig.setMaxTotal(1000) // 支持的最大连接数
	jedisPoolConfig.setMaxIdle(5) // 最大的空闲连接
	jedisPoolConfig.setTestOnBorrow(true) // 获取连接的时候检查连接的有效性
	jedisPoolConfig.setTestOnReturn(true)

	private val jedisPool = new JedisPool(jedisPoolConfig, DolphinConfig._redishost)

	/**
	  * 对外提供一个可以获取连接的方法 (该方法不能定义成函数)
	  * @param selectIndex
	  * @return
	  */
	def getJedis(selectIndex: Int = 0) = {
		val resource = jedisPool.getResource
		resource.select(selectIndex)
		resource
	}

}
